<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="./jquery.js"></script>
    <script>
        /*
        // 使用promise封装ajax请求
        function aaa(url) {
            return new Promise((resolve,reject) => {
                $.ajax({
                    url: url,      //通过变量改地址     可简写为url,
                    success: (res) => {
                        resolve(res);   //把请求成功的参数返回出去，并将进行中的状态改为已成功
                    },
                    error: (err) => {
                        reject(err);    //把请求失败的参数返回出去，并将进行中的状态改为已失败
                    }
                })
            })
        }
        // 因为aaa函数的返回值是promise实例，所以可以使用.then方法，
        // .then方法有两个回调函数，第一个是成功的回调，第二个是失败的回调
        aaa("a.json1").then((res)=>{
            console.log("成功了",res);
        },(err)=>{
            console.log("失败了",err);
        })
        */

        // 解决回调地狱
        // $.ajax({
        //     url: 'a.json',
        //     success: (res) => {
        //         console.log('a',res);
        //         $.ajax({
        //             url: "b.json",
        //             success: (res) => {
        //                 console.log('b',res);
        //                 $.ajax({
        //                     url:"c.json",
        //                     success:(res)=>{
        //                         console.log('c',res);
        //                     }
        //                 })
        //             }
        //         })
        //     }
        // })

        // 解决办法
        function aaa(ab){
            return new Promise((resolve,reject)=>{
                $.ajax({
                    url:"a.json",
                    success:(res)=>{
                        ab(res)
                    },
                    error:(err)=>{
                        ab(err)
                    }
                })
            })
        }
        aaa((abc)=>{
            console.log(abc);
        })
    </script>
</head>

<body>

</body>

</html>